#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
//void speedsort(int arr[], int left, int right)
//{
//	if (left >= right)
//		return;
//	int i = left;
//	int j = right;
//	int p = arr[i];
//	while (i < j)
//	{
//
//		while (i < j && arr[j] >= p)
//			j--;
//		arr[i] = arr[j];
//		while (i < j && arr[i] <= p)
//			i++;
//		arr[j] = arr[i];
//	}
//	arr[i] = p;
//	speedsort(arr, left, i - 1);
//	speedsort(arr, i+1, right);
//}
//
//int main()
//{
//    int n;
//	int k;
//	scanf("%d %d", &n,&k);
//	int arr[5000000] = { 0 };
//	int i = 0;
//	for (i = 0; i < n; i++)
//		scanf("%d", &arr[i]);
//	speedsort(arr, 0, n-1);
//	printf("%d", arr[k]);
//	return 0;
//}
//void xiersort(int arr[], int n)
//{
//	int h = 1;
//	while (h < n / 3)
//		h = 3 * h + 1;
//	while (h >= 1)
//	{
//		int i = 0;
//		for(i=1;i<n;i++)
//			for (int j = i; j >= h && arr[j] < arr[j - h];j-=h)
//			{
//				int tmp = arr[j];
//				arr[j] = arr[j - h];
//				arr[j - h] = tmp;
//			}
//		h /= 2;
//	}
//}
//int main()
//{
//	int N;
//	scanf("%d ", &N);
//	int arr[1000000] = { 0 };
//	int i = 0;
//	for (i = 0; i < N; i++)
//		scanf("%d", &arr[i]);
//	xiersort(arr, N );
//	for (i = 0; i < N; i++)
//		printf("%d ", arr[i]);
//	return 0;
//}
//void xinsertsort(int arr[], int n)
//{
//	int h = 1;
//	int i = 0,j=0;
//	while (h <= n / 3)
//		h = h * 3 + 1;
//	while (h >= 1)
//	{
//		for(i=1;i<n;i++)
//			for (j = i; j >= h && arr[j] < arr[j - h]; j -= h)
//			{
//				int tmp = arr[j];
//				arr[j] = arr[j - h];
//				arr[j - h] = tmp;
//			}
//		h /= 2;
//	}
//}
//int main()
//{
//	int n = 0;
//	int m = 0;
//	scanf("%d %d", &n, &m);
//	int arr[2000000] = { 0 };
//	int i = 0;
//	for (i = 0; i < m; i++)
//		scanf("%d", &arr[i]);
//	xinsertsort(arr, m);
//	for (i = 0; i < m; i++)
//		printf("%d ", arr[i]);
//	return 0;
//}
//#include <string.h>
//int  shusu(int n,int x, int arr[])
//{
//	int i = 0;
//	int t = 0;
//	for (i = n; i <= x; i++)
//	{
//		if (i == 1)
//			continue;
//		if (i == 2)
//		{
//			arr[t] = i; t++; continue;
//		}
//		int flag = 0;
//		for (int j = 2; j *j<= i; j++)
//			if (i % j == 0){flag = 1; break;
//	}
//		if (flag == 0) {
//			arr[t] = i; t++;
//		}
//	}
//	return t;
//}
////int  huiwen(int arr[], int sz)
////{
////	int count = 0;
////	for (int i = 0; i < sz; i++)
////	{
////		int s = 0;
////		int n = arr[i];
////		while (n)
////	    {
////			s = s * 10 + n % 10;
////			n /= 10;
////		}
////		if (arr[i] == s)
////			count++;
////	}
////	return count;
////}
//int main()
//{
//	int X,Y;
//	scanf("%d %d", &X,&Y);
//	int arr[10000] = { 0 };
//	int sz = 0;
//	if(X<Y)
//      sz=shusu(X,Y,arr);
//	else
//	  sz=shusu(Y, X, arr);
//	printf("%d", sz);
//	return 0;
//}
